The present invention relates to electronic writeboards and in particular to an on-screen keyboard for an electronic writeboard.
Electronic writeboards or whiteboards (EWBs) are known in the art and have been used in conjunction with host computers executing applications software to provide enhanced multimedia and teleconferencing capabilities. An example of an electronic writeboard of this nature is sold by SMART Technologies Inc. of Calgary, Alberta, Canada under the name SMART Board. The SMART Board electronic writeboard includes a touch sensitive panel, a tool tray accommodating a plurality of tools such as colored pens and an eraser, as well as a driver and an associated controller.
In use, the electronic writeboard is connected to a host processor such as a personal computer operating in a Windows(copyright) (computer operating system) environment and executing applications software, via a serial data connection. The electronic writeboard can be operated in one of three modes, namely a projected mouse mode, a projected mark-up mode and a non-projected mode.
In the projected mouse mode, the image displayed on the monitor of the personal computer is projected onto the touch sensitive panel. In this case, the electronic writeboard functions as a giant mouse providing input to the personal computer in response to user contact with the touch sensitive panel. Specifically, the electronic writeboard generates mouse events in response to user contact with the touch sensitive panel, which are conveyed to the personal computer for processing. Thus, by contacting the touch sensitive panel, the personal computer can be conditioned to open and display menus, to activate displayed menus, to drag icons, to execute software and to switch applications by changing input focus. The latter event of course is achieved by contacting the touch sensitive panel outside of the window of the active application running on the personal computer.
In the projected mark-up mode, the coloured pens and eraser are used to contact the touch sensitive panel. The active application running on the personal computer tracks where writing and erasing has occurred and maintains a computerized image of what is drawn on and erased from the touch sensitive panel. The computerized image is projected onto the touch sensitive panel so that the user can see the computerized image.
In the non-projected mode, there is no image displayed on the touch sensitive panel by the computer. Contact made on the touch sensitive panel is recorded on the attached computer. Since the touch sensitive panel is in non-projected mode, it is not interactive since users cannot see how their strokes are being recorded. For this reason, in non-projected mode, people write on the touch sensitive panel with standard dry-eraser markers. The computer then tracks their writing and allows them to save the notes later.
To enhance user input abilities, on-screen keyboards for use with electronic writeboards have been considered. For example, Innovative Management Group Inc. of California, U.S.A. has developed an on-screen keyboard sold under the name My-T-Touch. The My-T-Touch keyboard is an extension of a touchscreen interface and uses xe2x80x9cHeads Up Displayxe2x80x9d technology designed to keep a user""s focus and concentration in one place. Thus, visual re-focusing and re-positioning, caused by the up and down motion of going from screen to keyboard to screen is reduced.
Unfortunately, prior art on-screen keyboards do not address certain technical issues and therefore, suffer a number of problems. For example, some computer platforms such as Microsoft Windows(copyright) always ensure that an active application has input focus. In other words, these computer platforms ensure that any application that is selected through a mouse click receives input focus, i.e. the application becomes active. Thus, when a user contacts a prior art on-screen keyboard displayed on a touch sensitive panel to enter text into an active application, input focus is switched from the active application to the on-screen keyboard.
Unfortunately, only the application with input focus may receive inputs from peripheral devices, such as a mouse or a keyboard. Therefore input focus must be removed from the on-screen keyboard and given back to the application in order for the application to receive any input from the on-screen keyboard. Switching input focus from the on-screen keyboard to the application each time the on-screen keyboard is touched causes many unpleasant side effects. Firstly, a change in the activation state of an application causes the application to refresh or redraw portions of itself. This means that every time input focus is changed from the active application to the on-screen keyboard and then back to the application, the application will flicker as it refreshes. Secondly, a loss of input focus causes the application to close all of its open menus. As a result, prior art on-screen keyboards cannot be used to navigate through the menus of an active application. Finally, some applications, such as Internet Explorer(trademark) (Internet browser), do not retain the text insertion point whenever input focus is lost. This means, that when input focus is switched from the active application to the on-screen keyboard and then back to the application, the cursor is often positioned at a different point than where the cursor was prior to the active application losing input focus. In some circumstances, this makes it impossible to type text into certain fields using an on-screen keyboard.
It is therefore an object of the present invention to provide a novel on-screen keyboard for an electronic writeboard and an interactive display system incorporating the same.
According to one aspect of the present invention there is provided an electronic writeboard for communicating with a computer including applications software and running an active application comprising:
a touch sensitive panel on which the screen image output of said computer is displayed, said touch sensitive panel being responsive to user contact and generating events;
a keyboard window displayed on said touch sensitive panel and including a keyboard having a plurality of user selectable keys;
a driver receiving said events, said driver sensing user contact on said touch sensitive panel within said keyboard window and generating messages in response thereto; and
a controller executing a keyboard application and receiving said messages, said keyboard application processing said messages to provide data to the active application running on said computer corresponding to keys of said keyboard contacted by said user.
In a preferred embodiment, the driver passes events resulting from user contact on the touch sensitive panel outside of the keyboard window directly to the computer for processing. During initialization, the controller registers with the driver and provides a keyboard window handler establishing the location of the keyboard window on the touch sensitive panel and a set of message identifiers to allow the driver to communicate with the keyboard application. The driver uses the message identifiers to generate a message to the keyboard application in response to a mouse down event resulting from user contact within the keyboard window. A flag is also set by the driver so that subsequent mouse move events or a mouse up event result in the generation of messages or a message to the keyboard application.
It is also preferred that the keyboard application signals the computer to switch input focus to another application if input focus is given to the keyboard window.
According to another aspect of the present invention there is provided an interactive display system comprising:
an electronic writeboard;
a computer connected to said electronic writeboard, said computer including applications software and running an active application; and
a projector coupled to said computer and projecting the screen image of said computer onto said electronic writeboard wherein said electronic writeboard includes:
a touch sensitive panel on which the screen image output of said computer is displayed, said touch sensitive panel being responsive to user contact and generating events;
a keyboard window displayed on said touch sensitive panel and including a keyboard having a plurality of user selectable keys;
a driver receiving said events, said driver sensing user contact on said touch sensitive panel within said keyboard window and generating messages in response thereto; and
a controller executing a keyboard application and receiving said messages, said keyboard application processing said messages to provide data to the active application running on said computer corresponding to keys of said keyboard contacted by said user.
According to still yet another aspect of the present invention there is provided in an electronic writeboard having a touch sensitive panel on which an on-screen keyboard is displayed, where user contact on said touch sensitive panel results in the generation of mouse events conveyed to a computer for processing, a method of inhibiting input focus being switched from an active application executed by said computer to said on-screen keyboard when said on-screen keyboard is touched, said method comprising the steps of:
detecting user contact on said touch sensitive panel;
forwarding events generated in response to contact on said touch sensitive panel outside of said on-screen keyboard directly to said computer; and
processing events generated in response to contact on said touch sensitive panel within said on-screen keyboard and forwarding said processed events to said active application.
The present invention provides advantages in that when the on-screen keyboard is used to enter text data into an active application, the active application does not flicker or close its open menus. This is achieved by inhibiting input focus from changing to the on-screen keyboard when it is touched. Also, since input focus does not change, text insertion points in active applications are not lost when the on-screen keyboard is used to enter data into the active application.